package com.ddwl.order.dao.model;

import com.ddwl.common.dao.model.BaseModel;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.Table;
import java.math.BigDecimal;
import java.time.Instant;
import java.util.List;

/**
 * (OrderInfo)实体类
 *
 * @author makejava
 * @since 2020-06-02 14:48:12
 */
@Getter
@Setter
@Table(name = "order_info")
public class OrderInfo extends BaseModel {


    /**
     * 所属商户
     */
    private String mchId;
    /**
     * 所属门店
     */
    private String shopId;
    /**
     * 店铺名称
     */
    private String shopName;
    /**
     * 付款方式0一次性结清1.分批结清
     */
    private Integer payType;
    /**
     * 支付方式 0微信支付，1支付宝支付
     */
    private Integer paymentType;
    /**
     * 用户ID
     */
    private String userId;
    /**
     * 用户名称
     */
    private String userName;
    /**
     * 商品件数（相同的商品只记一件）
     */
    private Integer itemCount;
    /**
     * 订单内容
     */
    private String content;
    /**
     * 订单金额
     */
    private BigDecimal amount;
    /**
     * 购物津贴抵扣金额
     */
    private BigDecimal subsidyPrice;
    /**
     * 已支付金额
     */
    private BigDecimal payAmount;

    /**
     * 当前需要支付多少钱
     */
    private BigDecimal thisPayAmount;
    /**
     * 实际应支付金额
     */
    private BigDecimal realAmount;
    /**
     * 订单备注
     */
    private String note;
    /**
     * 订单商品快照
     */
    private String skuSnapshoot;
    /**
     * 订单支付时间
     */
    private Instant payTime;
    /**
     * 订单关闭时间
     */
    private Instant closeTime;
    /**
     * 关闭订单描述
     */
    private String closeMsg;
    /**
     * 确认收货时间
     */
    private Instant confirmTime;
    /**
     * 订单过期时间
     */
    private Instant expirationTime;
    /**
     * 订单开始支付时间
     */
    private Instant startPayTime;
    /**
     * 订单完成时间
     */
    private Instant finishTime;
    /**
     * 订单状态 0 未支付 1已支付 2已发货 3 已签收 4已取消 5 退款中 6已退款7付款超时关闭
     */
    private Integer status;
    /**
     * 推广信息
     */
    private String source;
    /**
     * 那个产品的订单
     */
    private String product;
    /**
     * 区域ID
     */
    private String regionId;
    /**
     * 发货时间
     */
    private Instant deliveryTime;

    /**
     * 商品spu
     */
    private List<OrderSpu> spus;
    /**
     * 分消员ID
     */
    private String distUserId;
    /**
     * 区域合伙人Id
     */
    private String regionUserId;

    /**
     * 结算状态（0未结算10结算中20结算成功30结算失败）
     */
    private Integer settlementStatus;
    /**
     * 后台备注
     */
    private String remark;
    /**
     * 供应商Id
     */
    private String supplierId;
    /**
     * 主订单id
     */
    private String masterOrderId;
    /**
     * 保修期
     */
    private Instant repairTime;
    /**
     * 是否进行售后(0否 1售后中 2售后完成 5 退款中 6已退款)
     */
    private Integer isAfterSale;
    /**
     * 申请售后次数
     */
    private Integer afterSaleCount;
    /**
     * 是否秒杀订单 (0否 1是)
     */
    private Integer isSeckill;

    /**
     * 订单类型 (0普通订单 1秒杀单 2砍价单 3限时购 4打折)
     */
    private Integer orderType;
    /**
     * 秒杀活动id
     */
    private String seckillId;
    /**
     * 0快递1外送2自提
     */
    private Integer deliveryType;

    /**
     * 0平台订单1店铺订单
     */
    private Integer platformTag;

    /**
     * 运费
     */
    private BigDecimal fare;
    /**
     * 电话
     */
    private String mobile;

    /**
     * 是否公益订单 0否 1是
     */
    private Integer charityFlag;

    /**
     * 是否代理商品订单 0否 1是
     */
    private Integer agentFlag;
    /**
     * 代理销售门店ID
     */
    private String agentShopId;
    /**
     * 优惠券id
     */
    private String couponId;
//
//    private BigDecimal couponAmount;
//
//    private Integer couponQty;

}